草庐IT

java - java中的this关键字

全部标签

javascript - jQuery .focus() 在每个浏览器中的工作方式不同。如何防止这种情况?

当我尝试执行.focus()时,我希望将焦点设置在输入元素上并在值的最后一个字符之后看到光标。我在IE中看到了它。在safari/chrome中,输入获得焦点并且所有文本都被选中。在firefox/opera中输入获得焦点,但光标在开头。我该怎么做才能防止这种情况发生并为所有浏览器获得正确的行为?这里有一个例子:http://jsbin.com/ozojol/edit#javascript,html附言。focus().val('').val(value)方法在IE中不起作用...还有哪些其他解决方法? 最佳答案 您可以在大多数浏览

javascript - 将我创建的假数组转换为 JavaScript 中的真实数组

我知道在JavaScript中有时系统会创建一个伪数组,这意味着它实际上是一个对象而不是Array的实例,但仍然具有数组的部分功能。例如,您在函数内部获得的arguments变量是系统创建的伪数组。在这种情况下,我知道要将它变成一个真正的数组,你可以这样做:varrealArray=Array.prototype.slice.call(fakeArray);但是如果假数组不是由系统创建的,如果fakeArray只是:varfakeArray={"0":"somevalue","1":"anothervalue"};在这种情况下,我测试过,使用上面的方法将导致一个空数组。我希望能够将我给

javascript - 遍历 coffeescript : $(@). 快捷方式中的 jQuery DOM 元素

我的coffeescript中有很多循环遍历DOM元素的集合,并执行更多的jQuery。这些函数看起来像这样:$('.iterable.object').each->$(@).doThis$(@).doThat##Morecomplicatedusage$(@).jqueryPluginCallx:$(@).data('attr1')x:$(@).data('attr2')##Morecomplicatedusage$(@).children('ul.animateable').each->if$(@).data('animation')is"fancy"$(@).animatefan

javascript - 在javascript中访问数组中的数组

我收到一个JSON回复,如下所示:[{"order_id":"12","customer":"useruser","status":"Pending","date_added":"02\/09\/2012","total":"$500.00","action":[{"text":"View","href":"http:\/\/localhost\/oc\/admin\/index.php?route=sale\/order\/info&token=92a80574e5fcbf3e2d021404cfaae1a4&order_id=12"}]}]看看操作键,它的值也是一个

javascript - Node.js 中的 fs 看不懂~/

我正在尝试检查目录是否作为node.js中命令行应用程序的一部分存在。但是,fs似乎并不理解~/。例如,以下返回false...>fs.existsSync('~/Documents')false...但这会返回true...>fs.existsSync('/Users/gtmtg/Documents')true...即使它们是同一回事。为什么会发生这种情况,是否有解决方法?提前致谢! 最佳答案 那是因为命令shell支持~/,而不是文件系统API。 关于javascript-Node.

javascript - 使用 Javascript D3 库,如何在 mousemove 事件中确定鼠标在区域元素数据集中的位置?

我正在尝试为我创建的区域路径设置工具提示。我检查了传递给onmousemove事件处理程序的所有参数,我只是得到了完整的数据集0、0。据我所知,没有任何数据表明我在数据中的索引。“这个”上下文也是svg路径元素。还是没什么用。即使查看了d3.select(this),我也无法在任何地方找到索引。有什么方法可以确定我的鼠标在哪个数据点上吗?环顾四周,我发现了对d3.mouse(this)的引用,它为我提供了x/y坐标,但我如何将其映射回数据集中的数据点?我的目标是有一个工具提示来显示与集合中特定数据点相关的一些元数据。这里是一些请求的代码片段:vararea=d3.svg.area().

javascript - node.js 和浏览器之间关键字 "this"的不同行为

我已经尝试在ie、firefox和node.js中使用以下代码varx=10;varo={x:15};functionf(){console.log(this.x);}f();f.call(o);在浏览器中的结果是10、15,但是在node.js中的结果是undefined,15。请向我解释一下“this”关键字在浏览器和node.js中的不同行为是什么?我已经阅读了很多页面,但没有任何明显的答案。提前致谢。 最佳答案 在Nodejs中加载的Javascript文件会自动包装在匿名函数中。所以在Node中你真正运行的是:(funct

java - jqgrid如何显示服务器端消息

我正在使用jqGrid以表格格式显示数据,使用JSP和servlet。编辑当执行插入、更新、删除等操作时,我想显示来自服务器的错误。(数据类型:“xml”)JQGridjQuery("#list10_d").jqGrid({height:250,width:600,url:'Assignment?action=Assign',datatype:"xml",colNames:['Sr.No.','PID','DATE','EMPID'],colModel:[{name:'srNo',index:'srNo',width:30,sortable:false},{name:'PID',ind

javascript - 可以在 RequireJS 模块中使用 'this' 关键字吗?

我定义了一个RequireJS模块(见下文)。它是网站上每个页面都需要的功能的集合。返回对象中的一个函数initTwitter()需要调用同一对象中的另一个函数shortenURL()。我收到一个控制台错误,内容为“TypeError:this.shortenURLisnotafunction.”所有这些函数最初都在一个常规的Javascript单例对象中,代码运行良好。我是RequireJS的新手,所以我不确定this关键字在RequireJS中的工作方式是否不同,或者我只是做错了什么。编辑:我也尝试删除“this”,但我收到“ReferenceError:shortenURLisn

javascript - this.initialize(arguments) 与 this.initialize.apply(this, arguments) : what's the difference?

如果您查看Backbone.js的源代码,您会看到此模式的多种用途:this.initialize.apply(this,arguments);例如,这里:varRouter=Backbone.Router=function(options){options||(options={});if(options.routes)this.routes=options.routes;this._bindRoutes();this.initialize.apply(this,arguments);};为什么不直接写this.initialize(arguments)呢?